﻿function validarCheckBox(chkActual,chkEjecutado,chkCancelado)
{
 
   
    if (chkActual.id == chkEjecutado)
        chkdeLado = document.getElementById(chkCancelado);
    else
        chkdeLado = document.getElementById(chkEjecutado);
    if (chkActual.checked)
        chkdeLado.checked = false;
    
}


function MensajeCargando() {
			var loading = document.createElement("div");
			loading.id = "loading";
	        loading.attributes.item('class').nodeValue = "mensajeAccion";
			loading.innerHTML = "Cargando...";
			document.body.appendChild(loading);
		}

function MensajeGuardando() {
			var loading = document.createElement("div");
			loading.id = "loading";
			loading.attributes.item('class').nodeValue = "mensajeAccion";
			loading.innerHTML = "Guardando...";
			document.body.appendChild(loading);
		}
function MensajeEliminando() {
			var loading = document.createElement("div");
			loading.id = "loading";
			loading.attributes.item('class').nodeValue = "mensajeAccion";
			loading.innerHTML = "Eliminando...";
			document.body.appendChild(loading);
		}			
		
function finalizarMensaje() {
			var loading = document.getElementById("loading");
			if(loading!=null)
			document.body.removeChild(loading);
		}


function RadioSeleccionar(sel,combo) {
  
        var cadena = null;
        for(i = 0; i < document.forms[0].elements.length; i++) {
            elm = document.forms[0].elements[i];
            
            if (elm.type == 'select-one') {
           
                cadena = new Array(); 
                cadena = elm.name.split("$");
			    cadena = cadena[cadena.length -1];
               
                if (combo == cadena){ 
                    elm.value =  sel;
                   }
			}
        }
}    


function Seleccionar(sel,check) {
       
        var cadena = null;
        for(i = 0; i < document.forms[0].elements.length; i++) {
            elm = document.forms[0].elements[i];
            if (elm.type == 'checkbox') {
                cadena = new Array(); 
                cadena = elm.name.split("$");
			    cadena = cadena[cadena.length -1];
               
                if (check == cadena) 
                	elm.checked =  sel;
			}
        }
}    
    
function enter()
{
   oEvent = window.event;
   oTarget = oEvent.target || oEvent.srcElement;
   if (event.keyCode == 13 ||event.keyCode == 8) {
		if(oTarget.type !="textarea" && oTarget.type !="text"  && oTarget.type != "image"){	
		event.returnValue=false;
        event.cancel = true;
        return false;
        }
	} 
}

function verCalendario(fecha)
{

    x = PopupModalReporte('../Comun/Calendario.aspx',206,214);
       if(x != '' && x != null){
            fecha    = document.getElementById(fecha);
            fecha.value = x;
       }
} 

function filasTramo(url,ancho,alto,hidSecuencia,hidSecuenciaFinal,hidReserva)
{  
       x = PopupModal(url,ancho,alto);
       if(x != '' && x != null){
            
            hidSecuencia    = document.getElementById(hidSecuencia);
            hidSecuenciaFinal    = document.getElementById(hidSecuenciaFinal);
            hidReserva    = document.getElementById(hidReserva);
		
			var cadena = new Array(); 
			cadena = x.split("|");
			
            
            hidSecuencia.value    = cadena[0];
            hidSecuenciaFinal.value    = cadena[1];
            hidReserva.value    = cadena[2];
		    return true;
        }else{return false;}
        

       
}

function buscarPersona(url,ancho,alto,idpersona,apellido,dni,idempresa,idarea,peso,idcosto,costo,idresponsable,responsable,hidApellido,siglas)
{  
       x = PopupModal(url,ancho,alto);
       if(x != '' && x != null){
            idpersona    = document.getElementById(idpersona);
            apellido    = document.getElementById(apellido);
            dni         = document.getElementById(dni);
            idempresa   = document.getElementById(idempresa); 
		    idarea      = document.getElementById(idarea);
		    peso        = document.getElementById(peso);
		    idcosto        = document.getElementById(idcosto);
		    costo          = document.getElementById(costo);
		    idresponsable  = document.getElementById(idresponsable);
		    responsable    = document.getElementById(responsable);
		    hidApellido    = document.getElementById(hidApellido);
		    siglas = document.getElementById(siglas);
		    
		
			var cadena = new Array(); 
			cadena = x.split("|");
			
            idpersona.value   = cadena[0];
            apellido.value    = cadena[1];
            dni.value         = cadena[2];
            idempresa.value   = cadena[3] == ''?0:cadena[3];
		    idarea.value      = cadena[4] == ''?0:cadena[4];
		    peso.value           = cadena[5] == ''?0:cadena[5];
		    idcosto.value        = cadena[6];
		    costo.value          = cadena[7];
		    idresponsable.value  = cadena[8];
		    siglas.value    = cadena[9];
		    hidApellido.value      = cadena[10];
		    responsable.value = cadena[11];
		    
		    return true;
        }else{return false;}
        

       
}
function buscarCostos(url,ancho,alto)
{  
       x = PopupModal(url,ancho,alto);
       return false;
}
function buscarCosto(url,ancho,alto,idcosto,costo,idresponsable,siglas,responsable)
{  
       x = PopupModal(url,ancho,alto);
       if(x != '' && x != null){
            idcosto    = document.getElementById(idcosto);
            costo    = document.getElementById(costo);
            idresponsable      = document.getElementById(idresponsable);
            siglas = document.getElementById(siglas);
            responsable      = document.getElementById(responsable);
		    
			var cadena = new Array(); 
			cadena = x.split("|");
			
			idcosto.value = cadena[0];
			costo.value = cadena[1];
			idresponsable.value = cadena[2];
			siglas.value = cadena[3];
			responsable.value = cadena[4];
	

        }
        //return false;
       
}

function FrameSize(pagina,num){

     AutoHeigth(pagina,num,'',false);
}

//function AutoHeigthResolution(pagina){
//    
//    objHeight = 0;
//    altotemp = 100;
//    padre = pagina.parent;
//    objeto = padre.document.getElementsByTagName('iframe');
//      
//    if (objeto !=null){
//	    //objHeight = altotemp;
//	    if(document.getElementById) 
//	    {
//	        /*if(valor) 
//	            padre.document.getElementById(objeto[0].name).style.height= alto;*/
// 
//           //alert(objeto[0].marginHeight);

//            objHeight = (screen.height /2) - altotemp;//pagina.document.body.scrollHeight;
//            
//    	    padre.document.getElementById(objeto[0].name).style.height=objHeight +"px"
//	        //AutoHeigth(padre.parent,num-1,objHeight,true);
//	    }
//	}
//}
//function IFrameScroll(pagina){
//    padre = pagina.parent;
//    objeto = padre.document.getElementsByTagName('iframe');
//    alert(objeto[0]);
//    var onClickAction = 'toggleSelectBoxes();';
//    alert(objeto[0].onscroll);
//    objeto[0].onscroll = new Function(onClickAction);
//    alert(objeto[0].name);
//    alert(objeto[0].onscroll);
//}
//function toggleSelectBoxes() {
//alert('entro');
//}
/*
function toggleSelectBoxes() {
	//var thisContainer = document.getElementById('tableContainer');
	//var thisHeader = document.getElementById('fixedHeader');
	//if (!thisContainer || !thisHeader) { return; }

	var selectBoxes = this.document.getElementsByTagName('select');
	if (!selectBoxes) { return; }

	for (var i = 0; i < selectBoxes.length; i++) {
		if (this.scrollTop >= eval(selectBoxes[i].parentNode.offsetTop - thisHeader.offsetHeight)) {
			selectBoxes[i].style.visibility = 'hidden';
		} else {
			selectBoxes[i].style.visibility = 'visible';
		}
	}
} 
*/
function AutoHeigth(pagina,num,alto,valor){
    
    objHeight = 0;
    altotemp = 22;
    padre = pagina.parent;
    objeto = padre.document.getElementsByTagName('iframe');
      
    if (objeto !=null && num != 0){
	    objHeight = altotemp;
	    if(document.getElementById) 
	    {
	        if(valor) 
	            padre.document.getElementById(objeto[0].name).style.height= alto;
            objHeight += pagina.document.body.scrollHeight;
    	    padre.document.getElementById(objeto[0].name).style.height=objHeight +"px"
	        AutoHeigth(padre.parent,num-1,objHeight,true);
	    }
	}
}

function CheckTime(str)
{
valor = false;
mensaje = "";
hora=str.value
if (hora=='') {return}
if (hora.length!=5) {mensaje = "Introducir HH:MM";valor = true;}
if(!valor){
    a=hora.charAt(0) //<=2
    b=hora.charAt(1) //<4
    c=hora.charAt(2) //:
    d=hora.charAt(3) //<=5
    if ((a==2 && b>3) || (a>2)) {mensaje = "El valor que introdujo en la Hora no corresponde, introduzca un digito entre 00 y 23";valor = true;}
    if (d>5) {mensaje = "El valor que introdujo en los minutos no corresponde, introduzca un digito entre 00 y 59";valor = true;}
    if (c!=':') {mensaje = "Ingrese correctamente la hora";valor = true;}
}
if(valor)
{
	alert(mensaje);
	str.focus();	
}
}

function grillaSeleccion(numFila,tabla,todo,combo){
    fila=document.getElementById(tabla).getElementsByTagName('tr');
    if(!todo){
        combo = document.getElementById(combo);
        estiloFila(fila[numFila + 1],numFila,combo.value);
    }
    else
    {
        for(i = 0; i<fila.length -1; i++){
            combo = buscarComboEstado(fila[i + 1])
            estiloFila(fila[i + 1],i,combo.value);
         }
    }   
}

function estiloFila(fila,numFila,estado)
{
    if(estado != 0){
        //if(numFila%2 == 0) 
            estilo = "grillaAprobada";
        //else
       //     estilo = "grillaAlternativo";
    }else estilo = "grillaRegistrada";
    
    fila.attributes.item('class').nodeValue = estilo;  
      
}
function buscarComboEstado(fila){
        celda   = fila.getElementsByTagName('td');
        for(x=0;x<celda.length;x++){
	        combo = celda[x].getElementsByTagName('select')[0];
	        if(combo != null)
	            return combo;
	    }
}

function grillaSeleccionCheck(numFila,tabla,todo,caja){
    fila=document.getElementById(tabla).getElementsByTagName('tr');
    if(!todo){
        caja = document.getElementById(caja);
        estado = caja.checked?caja.value:0;
        estiloFilaCheck(fila[numFila + 2],numFila,estado);
    }
    else{
        for(i = 0; i<fila.length -2; i++){
            estado = obtenerEstado(fila[i + 2]);           
            estiloFilaCheck(fila[i + 2],i,estado);
            }
         }
       
}

function obtenerEstado(fila)
{
    chkAprobada = null;
    chkRechazado = null;
    estado = 0;
    
    celda = fila.getElementsByTagName('td');
    for(x=0;x<celda.length;x++){
        chkAprobada = celda[x].getElementsByTagName('input')[0];
        chkRechazado = celda[x].getElementsByTagName('input')[1];
        
        if(chkAprobada != null && chkRechazado!= null){
           if(chkAprobada.type == 'checkbox' && chkRechazado.type == 'checkbox'){
                break;
           }
        }
    }
    if(chkAprobada != null && chkRechazado!= null)
    {
       if(!chkAprobada.checked && !chkRechazado.checked)
            estado = 0;
       else if(chkAprobada.checked)
            estado = 1;     
       else if(chkRechazado.checked)     
            estado = 2;     
    }
    return estado;
	    
}

function estiloFilaCheck(fila,numFila,estado)
{
    if(estado != 0){
        estilo = "grillaAprobada";
    }else estilo = "grillaRegistrada";
    fila.attributes.item('class').nodeValue = estilo;  
      
}
function buscarCheckEstado(fila){
        celda   = fila.getElementsByTagName('td');
        for(x=1;x<celda.length;x++){
	        caja = celda[x].getElementsByTagName('input')[0];
	        if(caja != null)
	            if(caja.type == 'checkbox')
	                return caja;
	    }
}

function descripcionCombo(form,combo,tabla,numFila,boton){
    
    combo=document.getElementById(combo);
    boton=document.getElementById(boton);
    fila=document.getElementById(tabla).getElementsByTagName('tr');
    celda = fila[numFila + 1].getElementsByTagName('td');
    celda[1].innerText= combo.value =='0'?'':combo.value;
    boton.disabled = combo.value =='0'?true:false;
}


function chkRutasSeleccion(check,form,objeto)
{var obj
	if (form != ''){obj= eval(form + '.'+ objeto)} 
	else {obj= eval(objeto)}
	
	obj.readOnly = !check;
	obj.value = check?obj.value:'';
	obj.attributes.item('class').nodeValue= obj.readOnly==true?'readonly':'';
	}

function chkRutasSeleccion(check,form,objeto)
{var obj
	if (form != ''){obj= eval(form + '.'+ objeto)} 
	else {obj= eval(objeto)}
	
	obj.readOnly = !check;
	obj.value = check?obj.value:'';
	obj.attributes.item('class').nodeValue= obj.readOnly==true?'readonly':'';
	}
	

//############ Validacion Fecha ########################

function FP_Slash(form,objeto,separador)
{var obj
	FP_PermiteNumeros();
	if (form != ''){obj= eval(form + '.'+ objeto)} 
	else {obj= eval(objeto)}
	if ((obj.value.length == 2)||(obj.value.length ==5)){obj.value = obj.value + separador;}
    if (obj.value.length = obj.maxlength-1){return;}
}

function FP_ValidaFechaOnblur(form,objeto) 
{	

    var obj
	if (form != ''){obj= eval(form + '.'+ objeto)} 
	else {obj= eval(objeto)}
	//strNameObj : Nombre de la caja de texto a validar.
	
	if (obj.value !="")
	  { 
	  if (!isFecha(obj.value,"dd/MM/yyyy")) {
	      	obj.value="";
			alert('Debe ingresar una fecha valida.');
			obj.focus();			
		}		
	 }	
}

function isFecha(val,format) {
	var date=getDateFromFormat(val,format);
	if (date==0) { return false; }
	return true;
	}


function FP_PermiteNumeros()
{
	if ((window.event.keyCode<48) || (window.event.keyCode>57)) {
		window.event.returnValue =0;}
}

//###################################

function ValidacionCheckbox() {
        selecciono = false;
         
        for(i = 0; i < document.forms[0].elements.length; i++) {
            elm = document.forms[0].elements[i];
            if (elm.type == 'checkbox') 
                   if(elm.checked){
                        selecciono = true;
                        break;
                   }
             }
       if(!selecciono){
            alert('Seleccione una opción');    
            return false;
        }
        return true;
     }
    
function PopupModal(url,ancho,alto)
{ 
	var winl = (screen.width - parseInt(ancho)) / 2;	
	var wint = (screen.height - parseInt(alto)) / 2;	
    var obj;
    if (this.parent ==null)
    {
        obj = Anthem_InvokePageMethod('validarFinSessionCliente');     

    
    }
    else
    {
         obj = this.parent.Anthem_InvokePageMethod('validarFinSessionCliente'); 
         
    }

	   
	if (obj.value) return null;
	
	msg=window.showModalDialog(url,'',"dialogLeft:" + winl + "px;dialogTop:" + wint + "px;dialogWidth:" + ancho + "px;dialogHeight:"+alto+"px;Scrollbars:YES;Resizable:NO;Location:NO;Menubar:NO;Status:NO;Toolbar:NO'");
	
	if (msg == null)
	    return "";
	    
	return msg;
}

function PopupModalReporte(url,ancho,alto)
{ 
	var winl = (screen.width - parseInt(ancho)) / 2;	
	var wint = (screen.height - parseInt(alto)) / 2;	
	
	msg=window.showModalDialog(url,'',"dialogLeft:" + winl + "px;dialogTop:" + wint + "px;dialogWidth:" + ancho + "px;dialogHeight:"+alto+"px;Scrollbars:YES;Resizable:NO;Location:NO;Menubar:NO;Status:NO;Toolbar:NO'");
	return msg;
}

function validacionNumero(p_textbox)
{
	if (document.layers)
		document.captureEvents(Event.KEYPRESS);
    var keyCode = event.keyCode;
	if (keyCode == 16 || (keyCode >= 32 && keyCode <= 44) || keyCode == 46 || keyCode == 47 || (keyCode >= 58) 
		|| (keyCode == 45 && (p_textbox.value.toLowerCase().indexOf('-',0) >= 0 || p_textbox.value.toLowerCase().length > 0))) 
			event.returnValue = false;
}
function validacionTime(Obj)
{
	var ch_Caracter = String.fromCharCode(window.event.keyCode); 
	var valor = Obj.value + ch_Caracter    		
    var numero = parseFloat(valor);
	var char1 = numero.toString();
	
    if(/[1234567890:]/.test(ch_Caracter))
	    window.event.keyCode = ch_Caracter.charCodeAt(); 
	else
        window.event.keyCode = 0;       	
}
	
function validacionTexto(p_textbox) 
{
		var key = window.event.keyCode; 
		if (key <= 13 || key == 193 || key == 201 || key == 205 || key == 211 || key == 218 || key == 225 || key == 233 || key == 237 || key == 243 || key == 250 || key == 32 || key == 241 || key == 209 || (key >= 43 && key <= 58) || (key >= 59 && key <= 90) || (key >= 97 && key <= 122))
		{
      		return;
		}
		else
		{
			window.event.keyCode = 0; 
		}
}
function NumerosDecimales(p_textbox){
	if (document.layers)
		document.captureEvents(Event.KEYPRESS);
	var keyCode = event.keyCode;
	if (keyCode == 16 || (keyCode >= 32 && keyCode <= 44) || keyCode == 47 || (keyCode >= 58) 
		|| (keyCode == 45 && (p_textbox.value.toLowerCase().indexOf('-',0) >= 0 || p_textbox.value.toLowerCase().length > 0))) 
			event.returnValue = false;
	} 

function NumerosReales(Obj){
	var ch_Caracter = String.fromCharCode(window.event.keyCode); 
	var valor = Obj.value + ch_Caracter    		
    var numero = parseFloat(valor);
	var char1 = numero.toString();
	
	switch (ch_Caracter){
	case '-':
			if  ( (valor.charAt(0) == '-') && (valor.length ==1)) 
			{
				window.event.keyCode = ch_Caracter.charCodeAt(); 
			}
			else
			{
				window.event.keyCode = 0; 
			}
			break;			
	case '.':
			if  ( ContieneCaracter('.',valor) < 2 ) 
			{
				window.event.keyCode = ch_Caracter.charCodeAt(); 
			}
			else
			{
				window.event.keyCode = 0; 
			}
			break;
	default:
			if(/[1234567890]/.test(ch_Caracter))
			{
				window.event.keyCode = ch_Caracter.charCodeAt(); 
			}
				else
      		{
      			window.event.keyCode = 0;       	
      		} 
		    break
	}}

	
	function ContieneCaracter(caracter , cadena){
		var catidad  = 0;
		for (i=0 ; i<cadena.length; i++ ){
		
			if (cadena.charAt(i)== caracter) {
				catidad++;
					
			}
		
			
		}
		
		return catidad;
	
	}
	
function format_number_set(p_textbox,decimals)
{ 
  pnumber = p_textbox.value;
  if (isNaN(pnumber)) { return 0}; 
  if (pnumber=='') { return 0}; 
  
  var IsNegative=(parseInt(pnumber)<0);
  if(IsNegative)pnumber=-pnumber;

  var snum = new String(pnumber); 
  var sec = snum.split('.'); 
  var whole = parseInt(sec[0]); 
  var result = ''; 
  if(sec.length > 1)
  { 
    var dec = new String(sec[1]);
    //Código modificado
    if(dec.charAt(0) != '0' && dec.length >= decimals)
    {
        dec = parseInt(dec)/Math.pow(10,parseInt(dec.length-decimals-1));
	    Math.round(dec);
	    dec = parseInt(dec)/10;
	    if(IsNegative)
	    {
	      var x = 0-dec;
          x = Math.round(x);
	      dec = - x;
	    }
	    else
	    {
          dec = Math.round(dec);
          if(dec==Math.pow(10,decimals)-1)
          {
            dec = parseInt(dec)+1;
          }
            if(dec==Math.pow(10,decimals))
	        {
	            whole+=1;
	            dec="0";
	        }
	    }	    
    }
    else if(dec.charAt(0) == '0' && dec.length >= decimals)
    {
        var cZero = 0;
        var dec_t = dec;
        var count = 0;
        dec = '';
        
        while(count < decimals)
        {
            //Contar la cantidad de ceros
            if(dec_t.charAt(count) == "0")
            {
                cZero++;
            }
            //Asignar los decimales según la cantidad que se quiere
            dec += dec_t.charAt(count);
            count++;
        }
        
        if(dec_t.charAt(decimals)>=5)
        {
            if(dec_t.charAt(decimals-cZero)!=9 && dec_t.charAt(decimals-cZero)!=0)
            {
                dec = '';
                var x = parseInt(dec_t.charAt(decimals-cZero));
                count = 0;
                while (count < decimals-1)
                {
                    dec += dec_t.charAt(count);
                    count++;
                }
                x+=1;
                dec += x;
            }
            else if(dec_t.charAt(decimals-cZero-1)==9)
            {
                var x = parseInt(dec_t.charAt(decimals-cZero+1));
                x+=1;
                dec = '';
                dec += x;
            }
            //Validando el penúltimo y último decimal...
            else if(dec_t.charAt(decimals)>=5 && (dec_t.charAt(decimals+1) >= 5 || dec_t.charAt(decimals+1) == ''))
            {
                dec = '';
                x = '';
                count = 0;
                while (count < decimals-1)
                {
                    dec += dec_t.charAt(count);
                    count++;
                }
                x += dec_t.charAt(decimals-1);
                if (x != 0 && x != 9)
                {
                    count = 0;
                    cZero = 0;
                    dec = '';
                    while(count <= decimals)
                    {
                        if(dec_t.charAt(count) == 0)
                        {
                            cZero++;
                        }
                        count++;
                    }
                    count = 0;
                    while(count < cZero)
                    {
                        dec += 0;
                        count++;
                    }
                    x = parseInt(dec_t.charAt(cZero)) + 1;
                    dec += x;
                }
                else if(x == 9)
                {
                    count = 0;
                    cZero = 0;
                    dec = '';
                    while(count <= decimals)
                    {
                        if(dec_t.charAt(count) == 0)
                        {
                            cZero++;
                        }
                        count++;
                    }
                    count = 0;
                    while(count < cZero-1)
                    {
                        dec += 0;
                        count++;
                    }
                    x = parseInt(dec_t.charAt(cZero)) + 1;
                    dec += x;                    
                }
                else
                {   
                    dec += 1;
                }
            }
        }
    }

    dec = String(whole) + "." + String(dec); 
    var dot = dec.indexOf('.'); 
    if(dot == -1)
    { 
      dec += '.'; 
      dot = dec.indexOf('.'); 
    }
	var l=parseInt(dot)+parseInt(decimals);
    while(dec.length <= l) { dec += '0'; } 
    result = dec; 
  } 
  else
  { 
    var dot; 
    var dec = new String(whole);
    dec += '.'; 
    dot = dec.indexOf('.'); 
	var l=parseInt(dot)+parseInt(decimals);
    while(dec.length <= l) { dec += '0'; } 
    result = dec; 
  } 
  if(IsNegative)result="-"+result;
  
  p_textbox.value = includeSeparator(result); 
}

function format_number(pnumber,decimals)
{ 
  if (isNaN(pnumber)) { return 0}; 
  if (pnumber=='') { return 0}; 
  
  var IsNegative=(parseInt(pnumber)<0);
  if(IsNegative)pnumber=-pnumber;

  var snum = new String(pnumber); 
  var sec = snum.split('.'); 
  var whole = parseInt(sec[0]); 
  var result = ''; 
  if(sec.length > 1)
  { 
    var dec = new String(sec[1]);
    //Código modificado
    if(dec.charAt(0) != '0' && dec.length >= decimals)
    {
        dec = parseInt(dec)/Math.pow(10,parseInt(dec.length-decimals-1));
	    Math.round(dec);
	    dec = parseInt(dec)/10;
	    if(IsNegative)
	    {
	      var x = 0-dec;
          x = Math.round(x);
	      dec = - x;
	    }
	    else
	    {
          dec = Math.round(dec);
          if(dec==Math.pow(10,decimals)-1)
          {
            dec = parseInt(dec)+1;
          }
            if(dec==Math.pow(10,decimals))
	        {
	            whole+=1;
	            dec="0";
	        }
	    }	    
    }
    else if(dec.charAt(0) == '0' && dec.length >= decimals)
    {
        var cZero = 0;
        var dec_t = dec;
        var count = 0;
        dec = '';
        
        while(count < decimals)
        {
            //Contar la cantidad de ceros
            if(dec_t.charAt(count) == "0")
            {
                cZero++;
            }
            //Asignar los decimales según la cantidad que se quiere
            dec += dec_t.charAt(count);
            count++;
        }
        
        if(dec_t.charAt(decimals)>=5)
        {
            if(dec_t.charAt(decimals-cZero)!=9 && dec_t.charAt(decimals-cZero)!=0)
            {
                dec = '';
                var x = parseInt(dec_t.charAt(decimals-cZero));
                count = 0;
                while (count < decimals-1)
                {
                    dec += dec_t.charAt(count);
                    count++;
                }
                x+=1;
                dec += x;
            }
            else if(dec_t.charAt(decimals-cZero-1)==9)
            {
                var x = parseInt(dec_t.charAt(decimals-cZero+1));
                x+=1;
                dec = '';
                dec += x;
            }
            //Validando el penúltimo y último decimal...
            else if(dec_t.charAt(decimals)>=5 && (dec_t.charAt(decimals+1) >= 5 || dec_t.charAt(decimals+1) == ''))
            {
                dec = '';
                x = '';
                count = 0;
                while (count < decimals-1)
                {
                    dec += dec_t.charAt(count);
                    count++;
                }
                x += dec_t.charAt(decimals-1);
                if (x != 0 && x != 9)
                {
                    count = 0;
                    cZero = 0;
                    dec = '';
                    while(count <= decimals)
                    {
                        if(dec_t.charAt(count) == 0)
                        {
                            cZero++;
                        }
                        count++;
                    }
                    count = 0;
                    while(count < cZero)
                    {
                        dec += 0;
                        count++;
                    }
                    x = parseInt(dec_t.charAt(cZero)) + 1;
                    dec += x;
                }
                else if(x == 9)
                {
                    count = 0;
                    cZero = 0;
                    dec = '';
                    while(count <= decimals)
                    {
                        if(dec_t.charAt(count) == 0)
                        {
                            cZero++;
                        }
                        count++;
                    }
                    count = 0;
                    while(count < cZero-1)
                    {
                        dec += 0;
                        count++;
                    }
                    x = parseInt(dec_t.charAt(cZero)) + 1;
                    dec += x;                    
                }
                else
                {   
                    dec += 1;
                }
            }
        }
    }

    dec = String(whole) + "." + String(dec); 
    var dot = dec.indexOf('.'); 
    if(dot == -1)
    { 
      dec += '.'; 
      dot = dec.indexOf('.'); 
    }
	var l=parseInt(dot)+parseInt(decimals);
    while(dec.length <= l) { dec += '0'; } 
    result = dec; 
  } 
  else
  { 
    var dot; 
    var dec = new String(whole);
    dec += '.'; 
    dot = dec.indexOf('.'); 
	var l=parseInt(dot)+parseInt(decimals);
    while(dec.length <= l) { dec += '0'; } 
    result = dec; 
  } 
  if(IsNegative)result="-"+result;
  
  return includeSeparator(result);
}

//function para darle formato de separador de miles.
function includeSeparator(nValor)
{
  var nEntero = nValor.substring(0, nValor.indexOf('.'));
  var pos = nEntero.length;
  while (pos > 0)
  {
    pos -= 3;
    if (pos <= 0) break;
    nEntero = nEntero.substring(0,pos) + ',' + nEntero.substring(pos, nEntero.length);
  }
  return nEntero.concat(nValor.substring(nValor.indexOf('.'), nValor.length));
}

function AbrirVentana(url,ancho,alto, fila, columna)
{ 
	var obj = this.parent.Anthem_InvokePageMethod('validarFinSessionCliente');
	if (obj.value) return null;
	window.open(url,null,'width='+ ancho +',height ='+ alto +',left=' + columna + ',top=' + fila + ',resizable=yes');

}

function BuscarProgramaciones(hidVuelo,txtNumVuelo,fecha)
{
    var strfecha = document.getElementById(fecha).value;	
    var msg = PopupModal('BuscarProgramaciones.aspx?fecha=' + strfecha,600,400);

    var cadena = new Array(); 
	cadena = msg.split("|");
	if (cadena.length != 2) return;
   document.getElementById(hidVuelo).value = cadena[0];		
   document.getElementById(txtNumVuelo).value = cadena[1];
   
}

function buscarSolicitud(url,ancho,alto,txtIdSolicitud,txtFechaSolicitud)
{  
       var strfecha = document.getElementById(txtFechaSolicitud).value;	
       x = PopupModal(url + '?fechaSolictud= ' + strfecha,ancho,alto);
       if(x != '' && x != null){
            txtIdSolicitud    = document.getElementById(txtIdSolicitud);
		    
			var cadena = new Array(); 
			cadena = x.split("|");
			
			txtIdSolicitud.value = cadena[0];
        }
}


function eliminarFila()
{
    var current = window.event.srcElement;
    while ( (current = current.parentElement)  && current.tagName !="TR");
         current.parentElement.removeChild(current);
  }

function cargar_datos_empresa(idddlempresa)
{
    var combobox = document.getElementById(idddlempresa);
    if (combobox.length < 2) {
       for (var i=0; i < 10; i++)
       {
          combobox.options.add(new Option(i,i));
       }
    }
}

function cambiarEstadoCheck(numFila,tabla,todo,strcaja,strcajaLado)
{
    fila=document.getElementById(tabla).getElementsByTagName('tr');
    
    caja = document.getElementById(strcaja);
    cajaLado = document.getElementById(strcajaLado);
    estado = caja.checked?caja.value:0;
    if(!todo){
        //caja = document.getElementById(caja);
        //estado = caja.checked?caja.value:0;
        estiloFilaCheck(fila[numFila + 2],numFila,estado);
        cambiarCheck(fila[numFila+2],caja,todo,'');
    }
    else{
        cambiarEnCabecera(caja,cajaLado);
        //cambiarCheck(fila[1],caja,todo,estado);
        for(i = 0; i<fila.length -2; i++){
            cambiarCheck(fila[i+2],caja,todo,estado);      
            estado = obtenerEstado(fila[i + 2]);     
            estiloFilaCheck(fila[i + 2],i,estado);
            
            }
         }
}

function cambiarEnCabecera(caja,cajaLado)
{
    chkLado = null;
    chkLado = document.getElementById(cajaLado.id);
    
    if (caja.checked)
        chkLado.checked = false;
    
}


function cambiarCheck(fila,caja,todo,estado)
{
    chkAprobada = null;
    chkRechazado = null;
    //estado = 0;
    
    celda = fila.getElementsByTagName('td');
    for(x=0;x<celda.length;x++){
        chkAprobada = celda[x].getElementsByTagName('input')[0];
        chkRechazado = celda[x].getElementsByTagName('input')[1];
        
        if(chkAprobada != null && chkRechazado!= null){
           if(chkAprobada.type == 'checkbox' && chkRechazado.type == 'checkbox'){
                break;
           }
        }
    }
    
    chkActual = null;
    chkLado = null;
    
    if(chkAprobada != null && chkRechazado!= null)
    {//VerificaControlFila
       // if (caja.id == 'grdPasajero_ctl02_chkAprobada' || caja.id == 'grdPasajero_ctl01_chkAprobada' || caja.id == 'grdCarga_ctl02_chkAprobada' || caja.id == 'grdCarga_ctl01_chkAprobada')
        if (VerificaControlFila (caja.id , 'grdPasajero_ctl','_chkAprobada' )  || VerificaControlFila (caja.id , 'grdCarga_ctl','_chkAprobada' ) )
        {  
           // alert('????caja   :  ' + caja.id );
            chkActual = chkAprobada;
            chkLado = chkRechazado;
        }
        else
        //if (caja.id == 'grdPasajero_ctl03_chkRechazado' || caja.id == 'grdPasajero_ctl03_chkRechazado' || caja.id == 'grdCarga_ctl02_chkRechazado' || caja.id == 'grdCarga_ctl01_chkRechazado')
        if (VerificaControlFila (caja.id , 'grdPasajero_ctl','_chkRechazado' )  || VerificaControlFila (caja.id , 'grdCarga_ctl','_chkRechazado' ) )
       
        {  // alert('rechazado' );
           // alert('caja' + caja.id );
            chkActual = chkRechazado;
            chkLado = chkAprobada;
        }
        //alert('chek' + chkActual);
        if (chkActual.checked)
            chkLado.checked = false;
        
       
        //Para el check de la cabecera
        if (todo)
        {
           
           chkActual.checked = estado;
           if (chkActual.checked)
               chkLado.checked = !estado;
           
        }   
    }	    
}

//**********************************************************************************************************//



function cambiarEstadoTodo(numFila, tabla, strcaja, strcajaLado ,strIndexAprobacion, flagEventoAprobado )
{
    fila=document.getElementById(tabla).getElementsByTagName('tr');
    
    caja = document.getElementById(strcaja);
    cajaLado = document.getElementById(strcajaLado);
    cambiarEnCabeceraAprobacion(strcaja,strcajaLado , strIndexAprobacion, flagEventoAprobado);
    
    for(i = 0; i<fila.length -2; i++){
    
        cambiarCheckTodo(fila[i+2],caja , strIndexAprobacion, strcaja );      
        estado = obtenerEstado(fila[i + 2]);     
        estiloFilaCheck(fila[i + 2],i,estado);
        
     }
      
}



function cambiarEnCabeceraAprobacion(caja,cajaLado  , strhdIndexAprobacion , flagEventoAprobado)
{
    chkLado = null;
    var chkcaja = document.getElementById(caja);
    var chkLado = document.getElementById(cajaLado);
    var hdIndexAprobacion = document.getElementById(strhdIndexAprobacion);
  
    if (flagEventoAprobado)
    {
       
        var index = 1*hdIndexAprobacion.value;
        index=( index>=2)?0: index + 1;
        hdIndexAprobacion.value=index;
        switch (index)
        {
        case 0:   chkcaja.checked = false;
                  chkLado.checked = false;   
                 // alert('Reinicia');   
                   toggleBgcolor(chkcaja ,false);             
                  break;
         case 1:chkcaja.checked = true;
                  chkLado.checked = false;     
                  //alert('Aprobacion Parcial');     
                  toggleBgcolor(chkcaja ,true);     
                  break;
         case 2:chkcaja.checked = true;
                chkLado.checked = false;
                toggleBgcolor(chkcaja ,false); 
                // alert('Aprobacion Total');  
                break;
        }
    }
    else
    {
        //chkcaja.checked = !chkcaja.checked ;
        chkLado.checked = false;
        hdIndexAprobacion.value="0";
        toggleBgcolor(chkLado ,false); 
    }

}
function cambiarCheckTodo(fila , caja , strIndexAprobacion, strcaja)
{
   //alert('cambiarCheckTodo');
    chkAprobada = null;
    chkRechazado = null;
    var hdEstadoResponsable = null;
    var hdIndexAprobacion = document.getElementById(strIndexAprobacion);
   var EstadoCheckAprobacion = 1* hdIndexAprobacion.value;
    celda = fila.getElementsByTagName('td');
    for(x=0;x<celda.length;x++){
        chkAprobada = celda[x].getElementsByTagName('input')[0];
        chkRechazado = celda[x].getElementsByTagName('input')[1];
        hdEstadoResponsable = celda[x].getElementsByTagName('input')[2];
       
        if(chkAprobada != null && chkRechazado!= null){
           if(chkAprobada.type == 'checkbox' && chkRechazado.type == 'checkbox'){
                break;
           }
        }
    }
   
    chkActual = null;
    chkLado = null;
   
    if(chkAprobada != null && chkRechazado!= null)
    {
       // if (caja.id == 'grdPasajero_ctl02_chkAprobada' || caja.id == 'grdPasajero_ctl01_chkAprobada' || caja.id == 'grdCarga_ctl02_chkAprobada' || caja.id == 'grdCarga_ctl01_chkAprobada')
        if (VerificaControlFila (caja.id , 'grdPasajero_ctl','_chkAprobada' )  || VerificaControlFila (caja.id , 'grdCarga_ctl','_chkAprobada' ) )
     
        {  
            if (EstadoCheckAprobacion ==2 )
            {
              //  alert('EstadoCheckAprobacion ==2 ')
                chkAprobada.checked =true;
                chkRechazado.checked =false;
                return;
            }
            if (EstadoCheckAprobacion ==1 && hdEstadoResponsable.value=="1")
            {
                //alert('????EstadoCheckAprobacion ==1 && EstadoResponsable==1')
                chkAprobada.checked =true;
                chkRechazado.checked = false;
                return;
            }
            chkAprobada.checked =false;
            chkRechazado.checked =false;
            return;
        }
        else
        //if (caja.id == 'grdPasajero_ctl02_chkRechazado' || caja.id == 'grdPasajero_ctl01_chkRechazado' || caja.id == 'grdCarga_ctl02_chkRechazado' || caja.id == 'grdCarga_ctl01_chkRechazado')
       if (VerificaControlFila (caja.id , 'grdPasajero_ctl','_chkRechazado' )  || VerificaControlFila (caja.id , 'grdCarga_ctl','_chkRechazado' ) )
       
        {   
            
           var chkRechazadoCabecera = document.getElementById(strcaja);
           //chkRechazadoCabecera.checked
           if (chkRechazadoCabecera.checked)
           {
            chkRechazado.checked =true;
            chkAprobada.checked =false;
            }
            else chkRechazado.checked =false;
        }
        
  
    }	
   // else   alert('chkAprobada == null || chkRechazado== null');    
    
}
function toggleBgcolor( elem , flag )
{
    var style2 = elem.style;
   
    style2.backgroundColor = (!flag)? "":"#d3d3d3";
}
function VerificaControlFila(strControl , strizq ,strder)
{
 var flag = (strControl.indexOf(strizq) != -1 &&  strControl.indexOf(strder) != -1 );
 return  flag;
}

function traeValorPopupBusqueda(control,hdCodigo,idRegion,url,ancho,alto)
    {
        if (idRegion!='')
        {
            region = document.getElementById(idRegion);
            url = url+'?idRegion='+region.value;
        }
        var data = PopupModal(url,ancho,alto);
        texto = document.getElementById(control);
        codigo = document.getElementById(hdCodigo);
        if(texto!=null && data!='')
        {
        
            var valores = new Array(); 
			valores = data.split("|");
			
			codigo.value = valores[0];
            texto.value = valores[1];
            
            if(valores[2] != '' && idRegion!='')
            {
               region.value = valores[2]; 
            }
        }
    }
    
    function traeValorPopupBusqueda2(control,hdCodigo, hdTexto,idRegion,url,ancho,alto)
    {
        if (idRegion!='')
        {
            region = document.getElementById(idRegion);
            url = url+'?idRegion='+region.value;
        }
        var data = PopupModal(url,ancho,alto);
        texto = document.getElementById(control);
        codigo = document.getElementById(hdCodigo);
        texto2 = document.getElementById(hdTexto);
        if(texto!=null && data!='')
        {
        
            var valores = new Array(); 
			valores = data.split("|");
			
			codigo.value = valores[0];
            texto.value = valores[1];
            texto2.value = valores[1];
            if(valores[2] != '')
            {
               region.value = valores[2]; 
            }
        }
    }
    
function traeValorPopupBusquedaToolTip(control,hdCodigo,tooltip,url,ancho,alto)
    {
        var data = PopupModal(url,ancho,alto);
        texto = document.getElementById(control);
        codigo = document.getElementById(hdCodigo);
        valtooltip = document.getElementById(tooltip);
        
        if(texto!=null && data!='')
        {
        
            var valores = new Array(); 
			valores = data.split("|");
			
			codigo.value = valores[0];
			texto.value = valores[1];
            valtooltip.value = valores[2];
            
        }
    }
   function cargando()
   {
     document.write('<div id="loading" class="textonormal" style="LEFT:380px; POSITION: absolute; TOP: 200px"><table border=0 cellspacing=0 cellpadding =0 class="textonormal"><tr><td align=center ><IMG  src="../images/loading.gif"></td></tr><tr><td align=center>Cargando... </td></tr></table></div>');
   }
   function btn_openReporte(codigoFiltro , enumReporte, codigoVentana) {
     //alert('Dentro de Reporte ');
     window.open("./rptPopup.aspx?codigoFiltro="+ codigoFiltro + "&enumReporte=" + enumReporte+ "&codigoventana=" + codigoVentana, codigoVentana , "resizable=yes,scrollbars=yes,closeable=no") ;
    
   }
   


    function traeValorPopupBusquedaPK(control,hdCodigo,hdRegion,url,ancho,alto)
    {
        var data = PopupModal(url,ancho,alto);
        texto = document.getElementById(control);
        codigo = document.getElementById(hdCodigo);
        //region = document.getElementById(hdRegion);
        
        if(texto!=null && data!='')
        {
        
            var valores = new Array(); 
			valores = data.split("|");
			
			codigo.value = valores[0];
			texto.value = valores[1];
            //region.value = valores[2];
            if(valores[2]!='')
            refreshForm(valores[2]); 
        }
       
    }
    
      
      
 /******************************************************************************************/
 /****************monitoreo***********************************/
      
   function showPopupWindow(URL,ancho,alto)
    {   
        var winl = (screen.width - ancho) / 2;
        var wint = (screen.height - alto) / 2;
        var features =  "'_blank,width="+ancho+",height="+alto+",top="+wint+",left="+winl+",scrollbars=yes,status=no,toolbar=no,menubar=no,location=no,resizable=no,titlebar=no'";   
        var x = window.open(URL,"Búsqueda",features,false);		
        return false;
    }
    
    function OpenPopup(mypage, w, h, scroll) {
      alert('prueba');
        var winl = (screen.width - w) / 2;
        var wint = (screen.height - h) / 2;
        winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable=no, status=yes'
        win = window.open(mypage, '_blank', winprops)
        if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
    } 
    
    
  function cambiarEstado(btn,hd)
   {
      var boton = document.getElementById(btn);
      var hidden = document.getElementById(hd);
     
      if(hidden.value=="1")
      {
        hidden.value="0";
        boton.src = '../Imagenes/Monitoreo/botones/inactivo.png';
        boton.alt="Click para activar";
      }
      else
      {
        hidden.value="1";
        boton.src = '../Imagenes/Monitoreo/botones/activo.png';
        boton.alt="Click para desactivar";
      }
      
   }
   
   
   function showPopupModalMonitoreo(url,ancho,alto)
    { 
	var winl = (screen.width - parseInt(ancho)) / 2;	
	var wint = (screen.height - parseInt(alto)) / 2;	
	
	msg=window.showModalDialog(url,'',"dialogLeft:" + winl + "px;dialogTop:" + wint + "px;dialogWidth:" + ancho + "px;dialogHeight:"+alto+"px;Scrollbars:YES;Resizable:NO;Location:NO;Menubar:NO;Status:NO;Toolbar:NO'");
	return msg;
    }
    
    function showModelessMonitoreo(url,ancho,alto)
    { 
	var winl = (screen.width - parseInt(ancho)) / 2;	
	var wint = (screen.height - parseInt(alto)) / 2;	
	
	msg=window.showModelessDialog(url,'',"dialogLeft:" + winl + "px;dialogTop:" + wint + "px;dialogWidth:" + ancho + "px;dialogHeight:"+alto+"px;Scrollbars:YES;Resizable:NO;Location:NO;Menubar:NO;Status:NO;Toolbar:NO'");
	return msg;
    }
    
    function showPopupWindow2(URL,ancho,alto)
    {   
        var winl = (screen.width - parseInt(ancho)) / 2;
        var wint = (screen.height - parseInt(alto)) / 2;
        var features =  "'width="+ancho+",height="+alto+",top="+wint+",left="+winl+",scrollbars=yes,status=no,toolbar=no,menubar=no,location=no,resizable=no,titlebar=no'";   
        var x = window.open(URL,'_blank',features,true);
        x.moveTo(0,0);
		
        return false;
    }